/*
*所有关于tb_project_workflowstep类的业务代码接口应在此处编写
*/
using MYData.Core.BaseProvider;
using MYData.Entity.DomainModels;
using MYData.Core.Utilities;
using System.Linq.Expressions;
using MYData.Entity.DomainModels.ApiEntity.Input;
using System.Threading.Tasks;
using System.Collections.Generic;

namespace MYData.System.IServices
{
    public partial interface Itb_project_workflowstepService
    {
        /// <summary>
        /// 节点审核添加
        /// </summary>
        /// <param name="inputDto"></param>
        /// <returns></returns>
        WebResponseContent WorkFlowStepAddTs(WorkStepInput_Dto inputDto);
        Task<WebResponseContent> GetWorkFlowStep(string projectId);
        Task<WebResponseContent> GetWorkStepInfo(string projectId);
        /// <summary>
        /// 获取进度
        /// </summary>
        /// <param name="projectId"></param>
        /// <returns></returns>
        string GetProgress(string projectId, string tableData);
        /// <summary>
        /// 获取操作
        /// </summary>
        /// <param name="projectId"></param>
        /// <returns></returns>
        List<TypeName> GetOperate(string projectId, string tableData);
        /// <summary>
        /// 获取判断条件集合
        /// </summary>
        /// <param name="tableName"></param>
        /// <returns></returns>
        WebResponseContent JudgmentConditions(string tableName);
        /// <summary>
        /// 获取退回操作
        /// </summary>
        /// <param name="projectId"></param>
        /// <param name="stepId"></param>
        /// <returns></returns>
        Task<WebResponseContent> GetReturnWorkFlowStep(string projectId, string stepId);
        /// <summary>
        /// 新增入账单节点审核添加
        /// </summary>
        /// <param name="inputDto"></param>
        /// <returns></returns>
        WebResponseContent newAccountAdd(NewAccountInput_Dto inputDto);
        /// <summary>
        /// 经费分配节点审核添加
        /// </summary>
        /// <param name="inputDto"></param>
        /// <returns></returns>
        public WebResponseContent newAllotAdd(NewAllotInput_Dto inputDto);
    }
 }
